package cn.px.service.sb;

import cn.px.dao.bean.MyVOPage;
import cn.px.dao.dto.sb.SbAllocateApplyDTO;
import cn.px.dao.entity.sb.SbAllocateApply;
import cn.px.dao.vo.query.sb.SbAllocateApplyVO;
import cn.px.service.base.IBaseService;

import java.util.List;

/**
 * @Description 调拨申请 service
 * @author 品讯科技
 * @date 2024-08
 * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
 */
public interface SbAllocateApplyService extends IBaseService<SbAllocateApply, SbAllocateApplyDTO> {

    /**
     * 批量删除
     *
     * @param ids ：
     * @return ：
     */
    int batchDelete(List<String> ids);

    /**
     * 分页查询
     *
     * @param record   ：
     * @param pageNum  ：
     * @param pageSize ：
     * @return ：
     */
    MyVOPage<SbAllocateApplyVO> selectPageList(SbAllocateApplyDTO record, int pageNum, int pageSize);

    /**
     * 分页查询
     *
     * @param record   ：
     * @param pageNum  ：
     * @param pageSize ：
     * @return ：
     */
    @Deprecated
    MyVOPage<SbAllocateApplyVO> selectUserPageList(SbAllocateApplyDTO record, int pageNum, int pageSize);

    /**
     * 根据用户查询数据
     * 普通人，只能看到自己提交的数据 设备主管，看到该部门提交的数据，但不能修改
     *
     * @param record   ：
     * @param pageNum  ：
     * @param pageSize ：
     * @return ：
     */
    @Deprecated
    MyVOPage<SbAllocateApplyVO> selectApplyPage(SbAllocateApplyDTO record, int pageNum, int pageSize);


    /**
     * 通过主键查询
     *
     * @param id ：
     * @return ：
     */
    SbAllocateApplyVO selectById(String id);

    /**
     * 审核
     *
     * @param record ：
     */
    void audit(SbAllocateApplyDTO record);

    /**
     * 修改
     *
     * @param entity ：
     */
    void updateByPrimaryKeySelective(SbAllocateApply entity);
}
